فایل DLL چیست
اخبار جدید فناوری اطلاعات
اخبار جدیدIT،اینترنت،رایانه
درباره وبلاگ


به وبلاگ من خوش آمدید
نويسندگان
دو شنبه 7 فروردين 1391برچسب:فایل DLL چیست , :: 11:18 :: نويسنده : رسول

 در كامپیوتر، DLL که مخفف dynamic link library است مجموعه ای از برنامه های کوچک است، که هر کدام می تواند توسط یک برنامه بزرگتر که در کامپیوتر در حال اجرا است احضار شود. برنامه کوچکی که به برنامه بزرگتر اجازه برقراری ارتباط با یک وسیله ویژه مثل چاپگر (پرینتر) و یا اسکنر را میدهد همواره به عنوان یک برنامه DLL بسته بندی می شود( معمولا به " فایل DLL " اشاره می شود). مزیت فایل های DLL این است که، از آنجا که آنها در حافظه كامپیوتر (RAM) با هم به همراه برنامه اصلی بارگذاری نــمی شوند، فضا در RAM صرفه جویی می شود. وقتی که یک فایل DLL نیاز است، بعد بارگذاری و اجرا می شود. به طور مثال تا مادامی که یک کاربر microsoft word ( یک برنامه پردازش کلمه که توسط شرکت microsoft به وجود امده است ) دارد یک سند (Document) را ویرایش می کند، فایل DLL چاپگر نیاز نیست تا در RAM بارگذاری شود. اگر کاربر تصمیم به پرینت گرفتن آن سند بگیرد، سپس برنامه کاربردی Word باعث می شود تا فایل DLL چاپگر بارگذاری و اجرا شود.

این ویژگی چندین مزیت دارد : اول اینكه چون فایل های DLL فقط در هنگام نیاز بارگذاری می شوند ، وقتی مورد استفاده نباشند ، حافظه ای رو مورد مصرف قرار نمی دهند . دوم اینكه چون فایل DLL فایلی جداگانه هست ، برنامه نویسان می توانند بدون تاثیر روی برنامه فراخوان یا فایلهای DLL دیگر ، اصلاحات یا تغییراتی را در یك واحد ( فایل DLL ) انجام دهند .

برای اطلاعات بیشتر به ادامه مطلب مراجعه کنید...

به یک فایل DLL اغلب پسوند نام فایل ".dll" داده می شود. فایل های DLL به صورت پویایی به برنامه ای که از آنها در طول زمان اجرای برنامه استفاده می کند متصل هستند تا اینکه با برنامه اصلی گردآوری شوند. مجموعه چنین فایل های (یا DLL ) تقریبا قابل مقایسه با کتابخانه روال هایی هستند (library routines) که با زبان های برنامه ریزی از قبیل ++C و C فراهم می شوند.

ویژگی خاصی در مایكروسافت ویندوز و سیستم عامل os/2 می باشد واین امكان را فراهم می سازد تا روالهای اجرایی به عنوان فایل های جداگانه ای با پسوند dll ذخیره شوند. و فقط هنگام نیاز برنامه ای فراخواننده آنها، بارگذاری شوند. این ویژگی چندین مزیت دارد: اول اینكه چون فایل های dll فقط در هنگام نیاز بارگذاری می شوند، وقتی مورد استفاده نباشند، حافظه ای رو مورد مصرف قرار نمی دهند. دوم اینكه چون فایل dll فایلی جداگانه هست، برنامه نویسان می توانند بدون تاثیر روی برنامه فراخوان یا فایلهای dll دیگر، اصلاحات یا تغییراتی را در یک واحد (فایل dll) انجام دهند.

قبلا به این موضوع اشاره شد که فایهای DLL آن دست از برنامه‌هایی هستند که یکبار نوشته می‌شوند و در پروژه‌های بعدی بکرات می‌تواند از آنها استفاده برد. چیزی که هسته ویندور را تشکیل می‌دهد اینگونه فایلها هستند. علاوه بر آن تکنیک‌هایی وجود دارد که شما را قادر می‌سازد تا برنامه‌هایی بنویسید که قادرند خود را بروز برسانند و یا خود ترمیم باشند. بهتر از آن اینکه برنامه‌ای بنویسید که با الحاق اینگونه فایلها بدان قدرت و امکانات جدید بدان افزود. همانند نرم‌افزارهای رایج از جمله Winamp.

کتابخانه‌های پویای قابل اتصال (DLL) چه هستند؟یک DLL مجموعه‌ای از توابع و پروسه‌هایی است که می‌تواند از برنامه یا DLLهای نظیر خود فراخوانده شود.

استفاده از اینگونه کتابخانه‌های دو مزیت اصلی دارد:

1- امکان به اشتراک گذاری از کد را فراهم می‌سازند. یک DLL می‌تواند مورد استفاده خیلی از برنامه‌های قرار گیرد. بعنوان مثال کتابخانه Win32 API نمونه‌ای از این سری فایلها است. بعلاوه از زمانی که پروسه‌های گوناگون قادر به فراخوانی یک DLL واحد هستند امکان به اشتراک گذاری کد‌ها و روتین‌ها فراهم آمده است. یک فایل DLL تنها یکبار به درون حافظه لود می‌شود و بارها توسط پروسه‌های گوناگونی مورد استفاده قرار می‌گیرد و این یعنی مدیریت حافظه بهتر.

2- مزیت دیگر امکان نوشتن برنامه‌ها بصورت اجزای منفصل است که این اجزا خود قابل تعویض با نگارش‌های جدیدتر جهت توسعه نرم‌افزار خواهند بود بدون اینکه خطی از کد برنامه اصلی دگرگون شود.
با این توصیف فایلهای کتابخانه‌ای درونی که در پروژه‌های مورد استفاده قرار می‌گیرد در صورت تغییر نیاز هست تا پروژه اصلی دوباره کمپایل شود تا بتوان با آن ارتباط بر قرار کرد. اما در DLL ها چون بصورت پویا و قابل انعطاف نوشته شده‌اند این اتصال در بیرون از بدنه اصلی و درست در زمان فراخوانی آن قبیل از متدها و توابع شکل می‌گیرد و این خود تفاوت آشکار از مزیت این گونه از فایلها می‌باشد.همچنین یک فایل DLL می‌تواند حاوی توابعی باشد که فقط مورد استفاده خود هست و از درون به آن دسترسی نخواهیم داشت و آندسته از تابعی را که نیاز هست معرفی می‌کنیم تا از بیرون بدان دسترسی داشته باشیم. در این مرحله نیاز به معرفی در فایلهای Def هست که در پروژه‌های C و C++ مورد استفاده قرار می‌گیرد.

و اما ساختار DLL فایلهای DLL حاوی یک مدخل شروع انتخابی (optional entry point) و پایانی هستند که در زمانی که توسط برنامه‌های دیگر به درون حافظه لود یا آنلود می‌شوند قابل اجرا است. ویندوز این پروسه را در زمانی که یک برنامه DLLها را بدرون حافظه لود یا آنلود می‌کند اجرا می‌کند.

این دو نوع پروسه به DLL این امکان را می‌دهد که یک سری از مقدمات را پیش از استفاده مهیا کند یا بعد از استفاده پاکسازی نماید

کاربرد dll در برنامه نویسی :

با استفاده از این فایل های dll میشه برنامه هارو به صورت کاملا Modular و با مولفه های قابل مدیریت نوشت

دلیلشم اینه که Module ها به صورت جدا از هم کار می کنند و هر Moduleی که نصب شده باشه در زمان اجرا توی حافظه Load میشه و از یه Module فقط زمانی استفاده میشه که به اون Module احتیاج باشه .

مزیت دیگه استفاده از Module اینه کهUpdate برنامه خیلی راحت تر انجام میشه و فقط Module مورد نظر Update میشه بدون اثر گذاشتن روی سایر Module ها .

فایل های زیر در سیستم عامل Windows به عنوان DLL مورد استفاده قرار می گیرند .

ActiveX Controls (.ocx) files

مثه کنترل Calendar در ویندوز .

Control Panel (.cpl) files

مثه همه Item های موجود در کنترل پنل Windows

Device Driver Controls (.drv) files

مثه یک فایل Driver برای یک Printe

 

نظرات شما عزیزان:

saied
ساعت20:13---21 بهمن 1395
سلام دوست عزیز.
باید بابت نوشتن این مطلب ارزشمند بی نهایت متشکرم. متاسفانه در ویکی پدیا جای همچین مطلبی خالی هست اگر لطف کنید و به اشتراک بگذارید در پربار تر شدن وب فارسی کمک شایانی کردید
امید وارم که همیشه موفق باشید
ارادتمند شما سعید


نام :
آدرس ایمیل:
وب سایت/بلاگ :
متن پیام:
:) :( ;) :D
;)) :X :? :P
:* =(( :O };-
:B /:) =DD :S
-) :-(( :-| :-))
نظر خصوصی

 کد را وارد نمایید:

 

 

 

عکس شما

آپلود عکس دلخواه:





پيوندها


ورود اعضا:

نام :
وب :
پیام :
2+2=:
(Refresh)

خبرنامه وب سایت:

برای ثبت نام در خبرنامه ایمیل خود را وارد نمایید




آمار وب سایت:
 

بازدید امروز : 5
بازدید دیروز : 0
بازدید هفته : 5
بازدید ماه : 9
بازدید کل : 129647
تعداد مطالب : 40
تعداد نظرات : 6
تعداد آنلاین : 1


این صفحه را به اشتراک بگذارید